<!--$Id: db_cxx.so,v 11.9 2000/03/22 22:02:14 bostic Exp $-->
<!--Copyright (c) 1997,2008 Oracle.  All rights reserved.-->
<!--See the file LICENSE for redistribution information.-->
<html>
<head>
<title>Berkeley DB Reference Guide: Release 3.0: the Db class for C++ and Java</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++">
</head>
<body bgcolor=white>
<table width="100%"><tr valign=top>
<td><b><dl><dt>Berkeley DB Reference Guide:<dd>Upgrading Berkeley DB Applications</dl></b></td>
<td align=right><a href="../upgrade.3.0/dbenv_cxx.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../upgrade.3.0/cxx.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p align=center><b>Release 3.0: the Db class for C++ and Java</b></p>
<p>The static Db::open method and the DbInfo class have been removed in the
Berkeley DB 3.0 release.  The way to open a database file is to use the new Db
constructor with two arguments, followed by set_XXX methods to configure
the Db object, and finally a call to the new (nonstatic) Db::open().  In
comparing the Berkeley DB 3.0 release open method with the 2.X static open
method, the second argument is new.  It is a database name, which can
be null.  The DbEnv argument has been removed, as the environment is now
specified in the constructor.  The open method no longer returns a Db,
since it operates on one.</p>
<p>Here's a C++ example opening a Berkeley DB database using the 2.X interface:</p>
<blockquote><pre>// Note: by default, errors are thrown as exceptions
Db *table;
Db::open("lookup.db", DB_BTREE, DB_CREATE, 0644, dbenv, 0, &table);</pre></blockquote>
<p>In the Berkeley DB 3.0 release, this code would be written as:</p>
<blockquote><pre>// Note: by default, errors are thrown as exceptions
Db *table = new Db(dbenv, 0);
table-&gt;open("lookup.db", NULL, DB_BTREE, DB_CREATE, 0644);</pre></blockquote>
<p>Here's a Java example opening a Berkeley DB database using the 2.X interface:</p>
<blockquote><pre>// Note: errors are thrown as exceptions
Db table = Db.open("lookup.db", Db.DB_BTREE, Db.DB_CREATE, 0644, dbenv, 0);</pre></blockquote>
<p>In the Berkeley DB 3.0 release, this code would be written as:</p>
<blockquote><pre>// Note: errors are thrown as exceptions
Db table = new Db(dbenv, 0);
table.open("lookup.db", null, Db.DB_BTREE, Db.DB_CREATE, 0644);</pre></blockquote>
<p>Note that if the dbenv argument is  null, the database will not exist
within an environment.</p>
<table width="100%"><tr><td><br></td><td align=right><a href="../upgrade.3.0/dbenv_cxx.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../upgrade.3.0/cxx.html"><img src="../../images/next.gif" alt="Next"></a>
</td></tr></table>
<p><font size=1>Copyright (c) 1996,2008 Oracle.  All rights reserved.</font>
</body>
</html>
